﻿namespace TestTool.Proxies.Event
{
    using System;
    using System.CodeDom.Compiler;
    using System.ComponentModel;
    using System.Diagnostics;
    using System.ServiceModel;
    using System.ServiceModel.Channels;

    [GeneratedCode("System.ServiceModel", "3.0.0.0"), DebuggerStepThrough]
    public class PausableSubscriptionManagerClient : ClientBase<PausableSubscriptionManager>, PausableSubscriptionManager
    {
        public PausableSubscriptionManagerClient()
        {
        }

        public PausableSubscriptionManagerClient(string endpointConfigurationName) : base(endpointConfigurationName)
        {
        }

        public PausableSubscriptionManagerClient(Binding binding, EndpointAddress remoteAddress) : base(binding, remoteAddress)
        {
        }

        public PausableSubscriptionManagerClient(string endpointConfigurationName, EndpointAddress remoteAddress) : base(endpointConfigurationName, remoteAddress)
        {
        }

        public PausableSubscriptionManagerClient(string endpointConfigurationName, string remoteAddress) : base(endpointConfigurationName, remoteAddress)
        {
        }

        public PauseSubscriptionResponse PauseSubscription(TestTool.Proxies.Event.PauseSubscription PauseSubscription1)
        {
            PauseSubscriptionRequest request = new PauseSubscriptionRequest {
                PauseSubscription = PauseSubscription1
            };
            return ((PausableSubscriptionManager) this).PauseSubscription(request).PauseSubscriptionResponse;
        }

        public RenewResponse Renew(TestTool.Proxies.Event.Renew Renew1)
        {
            RenewRequest request = new RenewRequest {
                Renew = Renew1
            };
            return ((PausableSubscriptionManager) this).Renew(request).RenewResponse;
        }

        public ResumeSubscriptionResponse ResumeSubscription(TestTool.Proxies.Event.ResumeSubscription ResumeSubscription1)
        {
            ResumeSubscriptionRequest request = new ResumeSubscriptionRequest {
                ResumeSubscription = ResumeSubscription1
            };
            return ((PausableSubscriptionManager) this).ResumeSubscription(request).ResumeSubscriptionResponse;
        }

        [EditorBrowsable(EditorBrowsableState.Advanced)]
        PauseSubscriptionResponse1 PausableSubscriptionManager.PauseSubscription(PauseSubscriptionRequest request)
        {
            return base.Channel.PauseSubscription(request);
        }

        [EditorBrowsable(EditorBrowsableState.Advanced)]
        RenewResponse1 PausableSubscriptionManager.Renew(RenewRequest request)
        {
            return base.Channel.Renew(request);
        }

        [EditorBrowsable(EditorBrowsableState.Advanced)]
        ResumeSubscriptionResponse1 PausableSubscriptionManager.ResumeSubscription(ResumeSubscriptionRequest request)
        {
            return base.Channel.ResumeSubscription(request);
        }

        [EditorBrowsable(EditorBrowsableState.Advanced)]
        UnsubscribeResponse1 PausableSubscriptionManager.Unsubscribe(UnsubscribeRequest request)
        {
            return base.Channel.Unsubscribe(request);
        }

        public UnsubscribeResponse Unsubscribe(TestTool.Proxies.Event.Unsubscribe Unsubscribe1)
        {
            UnsubscribeRequest request = new UnsubscribeRequest {
                Unsubscribe = Unsubscribe1
            };
            return ((PausableSubscriptionManager) this).Unsubscribe(request).UnsubscribeResponse;
        }
    }
}

